﻿using System;
using System.Management.Automation;

namespace Wolfpack.Contrib.Checks.Powershell
{
    public interface IWolfpackPowerShellHost
    {
        void SetShouldExit(int exitCode);

        void Write(string value);

        void Write(ConsoleColor foregroundColor, ConsoleColor backgroundColor, string value);

        void WriteDebugLine(string message);

        void WriteErrorLine(string value);

        void WriteLine();

        void WriteLine(string value);

        void WriteLine(ConsoleColor foregroundColor, ConsoleColor backgroundColor, string value);

        void WriteProgress(long sourceId, ProgressRecord record);

        void WriteVerboseLine(string message);

        void WriteWarningLine(string message);
    }
}
